
package com.crowdfunding.circle.data.entity;

import java.math.BigDecimal;
import java.util.Date;

import org.apache.commons.lang3.StringUtils;

/**
 * 数据_平台信息实体类
 *
 * @author 朱国军
 * @version 2016年10月21日 朱国军
 */
public class DataPlatformVO {

    /** 平台Id */
    private String platformId;

    /** 平台名称 */
    private String platformName;

    /** 平台总成交额 */
    private BigDecimal totalAmount;
    
    /** 平台成交笔数 */
    private Long tradeCount;
    
    /** 待审核项目数 */
    private Long toAuditCount;

    /** 平台维护人 */
    private String managerUser;

    /** 平台维护人_姓名 */
    private String managerUserName;

    /** 审核状态（1，待审核，2审核通过，3，审核不通过） */
    private Integer auditStatus;

    /** 发布人 */
    private String publishUser;

    /** 更新时间 */
    private Date updateTime;

    /** 创建时间 */
    private Date createTime;

    /** 状态：0默认，1管理员删除，2用户删除 */
    private Integer dataStatus;

    /**
     * 设置平台Id
     *
     * @param platformId 平台Id
     */
    public void setPlatformId(String platformId) {
        this.platformId = platformId;
    }

    /**
     * 获取平台Id
     *
     * @return 平台Id
     */
    public String getPlatformId() {
        return platformId;
    }

    /**
     * 设置平台名称
     *
     * @param platformName 平台名称
     */
    public void setPlatformName(String platformName) {
        this.platformName = platformName;
    }

    /**
     * 获取平台名称
     *
     * @return 平台名称
     */
    public String getPlatformName() {
        return platformName;
    }
    
    /**
     * 获取平台总成交额
     *
     * @return 平台总成交额
     */
    public BigDecimal getTotalAmount() {
        return totalAmount;
    }
    
    /**
     * 设置平台总成交额
     *
     * @param totalAmount 平台总成交额
     */
    public void setTotalAmount(BigDecimal totalAmount) {
        this.totalAmount = totalAmount;
    }
    
    /**
     * 获取平台成交笔数
     *
     * @return 平台成交笔数
     */
    public Long getTradeCount() {
        return tradeCount;
    }
    
    /**
     * 设置平台成交笔数
     *
     * @param tradeCount 平台成交笔数
     */
    public void setTradeCount(Long tradeCount) {
        this.tradeCount = tradeCount;
    }
    
    /**
     * 获取待审核项目数
     *
     * @return 待审核项目数
     */
    public Long getToAuditCount() {
        return toAuditCount;
    }
    
    /**
     * 设置待审核项目数
     *
     * @param toAuditCount 待审核项目数
     */
    public void setToAuditCount(Long toAuditCount) {
        this.toAuditCount = toAuditCount;
    }
    
    /**
     * 设置平台维护人
     *
     * @param managerUser 平台维护人
     */
    public void setManagerUser(String managerUser) {
        this.managerUser = managerUser;
    }

    /**
     * 获取平台维护人
     *
     * @return 平台维护人
     */
    public String getManagerUser() {
        return managerUser;
    }
    
    /**
     * 获取平台维护人_姓名
     *
     * @return 平台维护人_姓名
     */
    public String getManagerUserName() {
        return managerUserName;
    }
    
    /**
     * 设置平台维护人_姓名
     *
     * @param managerUserName 平台维护人_姓名
     */
    public void setManagerUserName(String managerUserName) {
        this.managerUserName = managerUserName;
    }

    /**
     * 获取审核状态（1，待审核，2审核通过，3，审核不通过）
     *
     * @return 审核状态（1，待审核，2审核通过，3，审核不通过）
     */
    public Integer getAuditStatus() {
        return auditStatus;
    }

    /**
     * 设置审核状态（1，待审核，2审核通过，3，审核不通过）
     *
     * @param auditStatus 审核状态（1，待审核，2审核通过，3，审核不通过）
     */
    public void setAuditStatus(Integer auditStatus) {
        this.auditStatus = auditStatus;
    }

    /**
     * 设置发布人
     *
     * @param publishUser 发布人
     */
    public void setPublishUser(String publishUser) {
        this.publishUser = publishUser;
    }

    /**
     * 获取发布人
     *
     * @return 发布人
     */
    public String getPublishUser() {
        return publishUser;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取更新时间
     *
     * @return 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取创建时间
     *
     * @return 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置状态：0默认，1管理员删除，2用户删除
     *
     * @param dataStatus 状态：0默认，1管理员删除，2用户删除
     */
    public void setDataStatus(Integer dataStatus) {
        this.dataStatus = dataStatus;
    }

    /**
     * 获取状态：0默认，1管理员删除，2用户删除
     *
     * @return 状态：0默认，1管理员删除，2用户删除
     */
    public Integer getDataStatus() {
        return dataStatus;
    }

    /**
     * 检查字段长度是否超长，检查非空字段是否有值
     *
     * @return 检查提示信息，为null时表示检查通过
     */
    public String valid() {
        
        if (StringUtils.isNotBlank(platformName) && platformName.length() > 100) {
            return "平台名称值超长，允许输入的最大长度为：100字符";
        }

        if (StringUtils.isBlank(platformName)) {
            return "平台名称不能为空";
        }

        return null;
    }
}
